#include "bomb.h"

bomb::bomb()
{
    //将所有爆炸pixmap放入数组中
    for(int i=1;i<=BOMB_MAX;i++)
    {
        //str类似于":/resources/bomb-%1.png"这样一个字符串中%1用i来补位，补为1234567
        QString str= QString(BOMB_PATH).arg(i);
        m_pixArr.push_back(QPixmap(str));
    }

    //坐标
    m_X = 0;
    m_Y = 0;

    //空闲状态
    m_Free=true;

    //当前播放图片下标
    m_index = 0;

    //播放爆炸间隔记录
    m_Recorder=0;

}

void bomb::updateInfo()
{
    //空闲状态下的爆炸效果直接return
    if(m_Free)
    {
        return;
    }

    m_Recorder++;
    //如果记录爆炸的时间未到达爆炸的间隔，不需切图
    if(m_Recorder < BOMB_INTERVAL)
    {
        return;
    }

    //重置记录
    m_Recorder = 0;

    //切换爆炸播放图片的下标
    m_index++;

    //一共七张图，数组最后一个图片下标为6
    //计算的下标大于6，重置为0并将爆炸效果设置为空闲
    if(m_index > BOMB_MAX - 1)
    {
        m_index = 0;
        m_Free=true;
    }
}
